package com.cmcc.zysoft.infocollection.model;

// Generated 2013-8-7 20:24:35 by Hibernate Tools 3.2.2.GA

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.hibernate.annotations.GenericGenerator;

/**
 * Employee generated by hbm2java
 */

@Entity
@Table(name = "tb_c_employee")
public class Employee implements java.io.Serializable {

	private static final long serialVersionUID = -1918445752333376606L;
	private String employeeId;
	private Headship headship;
	private Department department;
	private String storeId;
	private String employeeCode;
	private String employeeName;
	private String idCard;
	private String resume;
	private Integer age;
	private String sex;
	private String politicsStatus;
	private String nativePlace;
	private String school;
	private String degree;
	private Date graduationDate;
	private String mobile;
	private String backupMobile;
	private String telephone;
	private String email;
	private String qq;
	private Date birthday;
	private String picture;
	private String higherUp;
	private String isDeptLeader;
	private Date joinDate;
	private Date leaveDate;
	private String leaveReason;
	private String comment;
	private String status;
	private String delFlag;

	public Employee() {
	}

	public Employee(String employeeId) {
		this.employeeId = employeeId;
	}

	public Employee(String employeeId, Headship headship,
			Department department, String storeId, String employeeCode,
			String employeeName, String idCard, String resume, Integer age,
			String sex, String politicsStatus, String nativePlace,
			String school, String degree, Date graduationDate, String mobile,
			String backupMobile, String telephone, String email, String qq,
			Date birthday, String picture, String higherUp,
			String isDeptLeader, Date joinDate, Date leaveDate,
			String leaveReason, String comment, String status, String delFlag) {
		this.employeeId = employeeId;
		this.headship = headship;
		this.department = department;
		this.storeId = storeId;
		this.employeeCode = employeeCode;
		this.employeeName = employeeName;
		this.idCard = idCard;
		this.resume = resume;
		this.age = age;
		this.sex = sex;
		this.politicsStatus = politicsStatus;
		this.nativePlace = nativePlace;
		this.school = school;
		this.degree = degree;
		this.graduationDate = graduationDate;
		this.mobile = mobile;
		this.backupMobile = backupMobile;
		this.telephone = telephone;
		this.email = email;
		this.qq = qq;
		this.birthday = birthday;
		this.picture = picture;
		this.higherUp = higherUp;
		this.isDeptLeader = isDeptLeader;
		this.joinDate = joinDate;
		this.leaveDate = leaveDate;
		this.leaveReason = leaveReason;
		this.comment = comment;
		this.status = status;
		this.delFlag = delFlag;
	}

	@GenericGenerator(name = "generator", strategy = "uuid.hex")
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "employee_id", unique = true, nullable = false, length = 32)
	public String getEmployeeId() {
		return this.employeeId;
	}

	public void setEmployeeId(String employeeId) {
		this.employeeId = employeeId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "headship_id")
	public Headship getHeadship() {
		return this.headship;
	}

	public void setHeadship(Headship headship) {
		this.headship = headship;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "department_id")
	public Department getDepartment() {
		return this.department;
	}

	public void setDepartment(Department department) {
		this.department = department;
	}

	@Column(name = "store_id", length = 32)
	public String getStoreId() {
		return this.storeId;
	}

	public void setStoreId(String storeId) {
		this.storeId = storeId;
	}

	@Column(name = "employee_code", length = 32)
	public String getEmployeeCode() {
		return this.employeeCode;
	}

	public void setEmployeeCode(String employeeCode) {
		this.employeeCode = employeeCode;
	}

	@Column(name = "employee_name", length = 64)
	public String getEmployeeName() {
		return this.employeeName;
	}

	public void setEmployeeName(String employeeName) {
		this.employeeName = employeeName;
	}

	@Column(name = "id_card", length = 18)
	public String getIdCard() {
		return this.idCard;
	}

	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}

	@Column(name = "resume")
	public String getResume() {
		return this.resume;
	}

	public void setResume(String resume) {
		this.resume = resume;
	}

	@Column(name = "age")
	public Integer getAge() {
		return this.age;
	}

	public void setAge(Integer age) {
		this.age = age;
	}

	@Column(name = "sex", length = 1)
	public String getSex() {
		return this.sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	@Column(name = "politics_status", length = 2)
	public String getPoliticsStatus() {
		return this.politicsStatus;
	}

	public void setPoliticsStatus(String politicsStatus) {
		this.politicsStatus = politicsStatus;
	}

	@Column(name = "native_place", length = 64)
	public String getNativePlace() {
		return this.nativePlace;
	}

	public void setNativePlace(String nativePlace) {
		this.nativePlace = nativePlace;
	}

	@Column(name = "school", length = 64)
	public String getSchool() {
		return this.school;
	}

	public void setSchool(String school) {
		this.school = school;
	}

	@Column(name = "degree", length = 2)
	public String getDegree() {
		return this.degree;
	}

	public void setDegree(String degree) {
		this.degree = degree;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "graduation_date", length = 19)
	public Date getGraduationDate() {
		return this.graduationDate;
	}

	public void setGraduationDate(Date graduationDate) {
		this.graduationDate = graduationDate;
	}

	@Column(name = "mobile", length = 12)
	public String getMobile() {
		return this.mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	@Column(name = "backup_mobile", length = 12)
	public String getBackupMobile() {
		return this.backupMobile;
	}

	public void setBackupMobile(String backupMobile) {
		this.backupMobile = backupMobile;
	}

	@Column(name = "telephone", length = 15)
	public String getTelephone() {
		return this.telephone;
	}

	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}

	@Column(name = "email", length = 32)
	public String getEmail() {
		return this.email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	@Column(name = "qq", length = 18)
	public String getQq() {
		return this.qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "birthday", length = 19)
	public Date getBirthday() {
		return this.birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	@Column(name = "picture", length = 256)
	public String getPicture() {
		return this.picture;
	}

	public void setPicture(String picture) {
		this.picture = picture;
	}

	@Column(name = "higher_up", length = 32)
	public String getHigherUp() {
		return this.higherUp;
	}

	public void setHigherUp(String higherUp) {
		this.higherUp = higherUp;
	}

	@Column(name = "is_dept_leader", length = 2)
	public String getIsDeptLeader() {
		return this.isDeptLeader;
	}

	public void setIsDeptLeader(String isDeptLeader) {
		this.isDeptLeader = isDeptLeader;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "join_date", length = 19)
	public Date getJoinDate() {
		return this.joinDate;
	}

	public void setJoinDate(Date joinDate) {
		this.joinDate = joinDate;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "leave_date", length = 19)
	public Date getLeaveDate() {
		return this.leaveDate;
	}

	public void setLeaveDate(Date leaveDate) {
		this.leaveDate = leaveDate;
	}

	@Column(name = "leave_reason", length = 1024)
	public String getLeaveReason() {
		return this.leaveReason;
	}

	public void setLeaveReason(String leaveReason) {
		this.leaveReason = leaveReason;
	}

	@Column(name = "comment", length = 1024)
	public String getComment() {
		return this.comment;
	}

	public void setComment(String comment) {
		this.comment = comment;
	}

	@Column(name = "status", length = 1)
	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	@Column(name = "del_flag", length = 1)
	public String getDelFlag() {
		return this.delFlag;
	}

	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

}
